Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

280
Visualizações
¿Por qué aparece el error "Falta el token CSRF o es incorrecto"?

Estoy tratando de devolver un valor de una función Ver en Django. Esa función se llama desde un código JavsScript usando Ajax, pero aparece un error que dice "Prohibido (falta el token CSRF o es incorrecto)".

Javascript/Ajax

El mensaje de error

El código HTML se parece a esto:

 <div align="center" class="input-line"> <form class="input-form" method="post">{% csrf_token %} <input type = "text" id = "ans" class = "form-control" name = "address" placeholder="Type postcode..."><br><br> <button id = "homeBtn" class="btn btn-primary">Find info</button><br><br> </form> </div>

La función de vista es:

 def result(request): if(request == 'POST'): param = request.form['my data'] this = runAreaReview(param) #This returns a string return HttpResponse(this)
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Método 1

Para realizar solicitudes de publicación con ajax, debe establecer un encabezado llamado HTTP_X_CSRFTOKEN y establecer su valor en una cookie que se almacena en el navegador con el nombre csrftoken . referencia entonces en tu llamada ajax, deberías hacer algo como esto.

 var csrftoken = Cookies.get('csrftoken'); $.ajax( ... headers:{"HTTP_X_CSRF_TOKEN":csrftoken} );

también tenga en cuenta que si está utilizando algún servidor proxy inverso con algo como nginx, asegúrese de enviar este encabezado también a la aplicación django.

método 2

puede deshabilitar la verificación csrf para esta vista específica usando una anotación. Referencia

 from django.views.decorators.csrf import csrf_exempt @csrf_exempt def result(request): ...

método 3

El siguiente método NO SE RECOMIENDA por razones de seguridad

Siempre puede desactivar el middleware csrf en la configuración para deshacerse de él si solo está creando algo con fines recreativos y no para producción.

over 4 years ago · Santiago Trujillo Relatório

0

para cualquiera que se encuentre con este hilo, la clave HEADER debe ser X-CSRFToken como para Django 2.1, los enlaces van aquí https://docs.djangoproject.com/en/2.1/ref/csrf/

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda